TOP

SQL INSERT INTO

SQL INSERT INTO descriptif

L'instruction INSERT INTO permet d'insérer de nouveaux enregistrements dans la table.


INSERT INTO Syntaxe

L'instruction INSERT INTO peut être écrite de deux manières :

1. Spécifiez les noms de colonnes et les valeurs à insérer :

INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...)

2. Si vous ajoutez des valeurs pour toutes les colonnes du tableau, vous n'avez pas besoin de spécifier les noms de colonnes dans la requête SQL. Assurez-vous cependant que l'ordre des valeurs correspond à l'ordre des colonnes du tableau. Ici, la syntaxe INSERT INTO sera :

INSERT INTO table_name
VALUES (value1, value2, value3, ...)

Base de données de démonstration

Voici un exemple de la table "Customers" ("Clients") de la base de données "Northwind" :

CustomerID CustomerName ContactName Address City PostalCode Country
89 White Clover Markets Karl Jablonski 305 - 14th Ave. S. Suite 3B Seattle 98128 USA
90 Wilman Kala Matti Karttunen Keskuskatu 45 Helsinki 21240 Finland
91 Wolski Zbyszek ul. Filtrowa 68 Walla 01-012 Poland

INSERT INTO Exemple

L'instruction SQL suivante insère un nouvel enregistrement dans la table "Customers" :

INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country)
VALUES ('Cardinal', 'Tom B. Erichsen', 'Skagen 21', 'Stavanger', '4006', 'Norway')

La sélection dans la table "Customers" ressemblera désormais à ceci :

CustomerID CustomerName ContactName Address City PostalCode Country
89 White Clover Markets Karl Jablonski 305 - 14th Ave. S. Suite 3B Seattle 98128 USA
90 Wilman Kala Matti Karttunen Keskuskatu 45 Helsinki 21240 Finland
91 Wolski Zbyszek ul. Filtrowa 68 Walla 01-012 Poland
92 Cardinal Tom B. Erichsen Skagen 21 Stavanger 4006 Norway
Avez-vous remarqué que nous n'avons mis aucun numéro dans le champ CustomerID ? La colonne CustomerID est un champ numéroté automatiquement qui sera renseigné par le système lorsqu'un nouvel enregistrement est ajouté à la table.

Insérer des données dans les colonnes spécifiées uniquement

Vous pouvez également insérer des données uniquement dans certaines colonnes.

L'instruction SQL suivante insérera un nouvel enregistrement, mais uniquement les données des colonnes "CustomerName", "City" et "Country" (CustomerID sera mise à jour automatiquement) :

INSERT INTO Customers (CustomerName, City, Country)
VALUES ('Cardinal', 'Stavanger', 'Norway')

La sélection dans la table "Customers" ressemblera désormais à ceci :

CustomerID CustomerName ContactName Address City PostalCode Country
89 White Clover Markets Karl Jablonski 305 - 14th Ave. S. Suite 3B Seattle 98128 USA
90 Wilman Kala Matti Karttunen Keskuskatu 45 Helsinki 21240 Finland
91 Wolski Zbyszek ul. Filtrowa 68 Walla 01-012 Poland
92 Cardinal null null Stavanger null Norway